1. Field of the Invention
This invention relates to integrated circuit (IC) test systems and, more particularly, to burn-in and system testing of ICs.
2. Description of the Related Art
Complex integrated circuits (ICs) such as microprocessors are routinely subjected to several tests to screen for defective parts and to characterize the speed and voltage at which they will operate in target applications. One such test that is frequently employed is a “burn-in” test whose purpose is to weed out defective parts that would otherwise fail early in their operating use. Burn-in tests are usually performed on 100% of manufactured parts with the goal of accelerating potential failure mechanisms, thereby screening out any defective parts. In order to accelerate potential failure mechanisms, burn-in testing may operate parts at higher than normal voltages and/or temperatures, with temperatures being controlled by placing parts in an oven-like enclosure, providing cooling via fans or liquid heat exchange mechanisms, etc. A technique referred to as “self-heating” is often employed in which the operating temperature is a function of the clock speed at which a device under test (DUT) is operated during the burn-in test.
Additional testing is usually performed to verify the functionality and characterize the operating speed of a DUT. Well-known functionality tests include cache execution, scan, built-in self test (BIST), logic built-in self test (LBIST), and system-level application tests. Generally speaking functionality tests are performed under normal environmental conditions, i.e. at normal operating voltages and temperatures. By performing one or more functional tests at a variety of clock speeds, the maximum operating speed for a given part may be determined. Parts are often given a speed rating and separated into different lots according to the measured maximum speed.
Because of the different goals of burn-in tests and functional tests, different test systems have evolved to perform each type of test. Burn-in test equipment usually involves operating a part in an extreme environment while the DUT executes fairly simple instructions. Functional testing, on the other hand, generally involves causing a DUT to execute complex instructions in an environment that resembles a product-level application at a number of pre-determined clock speeds. For example, system-level testing is often performed by inserting a processor DUT into a test fixture that is functionally similar to a computer motherboard, loading an operating system into the processor's memory, and executing system-level application software. Consequently, execution of burn-in and functional tests often requires that a DUT be inserted into each of two or more test fixtures sequentially, resulting in higher risk of damage as well as extending the time to complete all of the tests in the sequence.
The fact that burn-in tests are often performed in a circuit environment that differs from a product-level application may lead to both higher stress to some parts of a device as well as lower stress to other parts than might occur in most applications, causing both lower yield and higher early failure than might otherwise be achieved. In addition to the above problems inherent in separate burn-in and functional test systems, the use of self-heating causes an undesirable dependency between the pattern of instructions that are executed during a test and the operating temperature of the device under test. Also, because of rapid changes in product-level functionality, it is difficult for test systems to be kept current with product-level applications.